package com.wei.czz.framework.admin.service;

import com.wei.czz.common.tool.PageDto;
import com.wei.czz.framework.admin.entity.DeptUserFlowEntity;

import java.util.List;
import java.util.Set;

/**
 * Created by IntelliJ IDEA.
 *
 * @author wei
 * date: 2022-09-21 23:10:02
 * className: DeptUserFlowService 用户切换部门操作服务接口
 * version: 1.0
 * description:
 */
public interface DeptUserFlowService {

    /**
     * 保存用户关联部门流水操作
     * @param userDeptFlow 用户关联部门流水对象
     */
    void saveOrEdit(DeptUserFlowEntity userDeptFlow);

    /**
     * 批量保存用户切换部门流水操作
     * @param userDeptFlowList 用户切换部门流水对象列表
     */
    void batchSave(List<DeptUserFlowEntity> userDeptFlowList);

    /**
     * 分页查询用户切换部门流水操作
     * @param userId 用户主键
     * @param page   页码
     * @param limit  每页大小
     * @return 查询用户切换部门流水分页数据
     */
    PageDto<DeptUserFlowEntity> getPageList(Long userId, Integer page, Integer limit);

    /**
     * 获取用户切换部门记录列表操作
     * 根据用户主键集合，获取用户所有部门切换记录数据
     * @param userIdSet 用户主键集合
     * @return 用户切换部门记录列表
     */
    List<DeptUserFlowEntity> getList(Set<Long> userIdSet);


}

